package com.example.auth.mapper;


import com.example.auth.entity.SysRole;
import com.example.auth.entity.SysUser;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface SysUserMapper {

    /**
     * 插入用户
     */
    int insert(SysUser sysUser);

    /**
     * 删除用户
     */
    int deleteByPrimaryKey(Long id);

    /**
     * 更新用户
     */
    int updateByPrimaryKey(SysUser sysUser);

    /**
     * 根据id查询用户
     */
    SysUser selectByPrimaryKey(Long id);

    /**
     * 查询用户列表
     */
    List<SysUser> selectList(SysUser sysUser);

    /**
     * 根据用户名查询用户
     */
    SysUser selectByUsername(String username);

    /**
     * 根据部门id查询用户
     */
    List<SysUser> selectByDeptIds(List<Long> deptIds);

    /**
     * 删除用户角色关系
     */
    int deleteSysUserRoleByUid(Long uid);

    /**
     * 插入用户角色关系
     */
    int insertSysUserRole(Long uid, List<Long> rids);

    /**
     * 根据用户id查询角色
     */
    List<SysRole> getRoleByUid(Long uid);
}
